<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>PU2CLR RDA5807 Arduino Library: RDS Functions</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr id="projectrow">
  <td id="projectlogo"><img alt="Logo" src="LOGO.png"/></td>
  <td id="projectalign">
   <div id="projectname">PU2CLR RDA5807 Arduino Library<span id="projectnumber">&#160;1.1.9</span>
   </div>
   <div id="projectbrief">Arduino Library for RDA5807 Devices - By Ricardo Lima Caratti</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('group__GA04.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>

<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle"><div class="title">RDS Functions</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gac2defc3812e1900ccd1ac719268abe2e"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#gac2defc3812e1900ccd1ac719268abe2e">RDA5807::getRdsStationName</a> (void)</td></tr>
<tr class="memdesc:gac2defc3812e1900ccd1ac719268abe2e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the Station Name.  <br /></td></tr>
<tr class="separator:gac2defc3812e1900ccd1ac719268abe2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga73610b1372a8bdaa959862881eae05fb"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#ga73610b1372a8bdaa959862881eae05fb">RDA5807::getRdsProgramInformation</a> (void)</td></tr>
<tr class="memdesc:ga73610b1372a8bdaa959862881eae05fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the Program Information (RT - Radio Text)  <br /></td></tr>
<tr class="separator:ga73610b1372a8bdaa959862881eae05fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2e78c58aca2f5121306d2e5ceb98effd"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#ga2e78c58aca2f5121306d2e5ceb98effd">RDA5807::getRdsStationInformation</a> (void)</td></tr>
<tr class="memdesc:ga2e78c58aca2f5121306d2e5ceb98effd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the Station Information.  <br /></td></tr>
<tr class="separator:ga2e78c58aca2f5121306d2e5ceb98effd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2e63d5c85cb1825492a5ba2ea3bef2c3"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#ga2e63d5c85cb1825492a5ba2ea3bef2c3">RDA5807::getBlockId</a> ()</td></tr>
<tr class="memdesc:ga2e63d5c85cb1825492a5ba2ea3bef2c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the current Block ID.  <br /></td></tr>
<tr class="separator:ga2e63d5c85cb1825492a5ba2ea3bef2c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga24e26921d1b0931681ae4cf9c23742d4"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#ga24e26921d1b0931681ae4cf9c23742d4">RDA5807::getErrorBlockA</a> ()</td></tr>
<tr class="memdesc:ga24e26921d1b0931681ae4cf9c23742d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the current Status of block A.  <br /></td></tr>
<tr class="separator:ga24e26921d1b0931681ae4cf9c23742d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadcc73bed36f5dbad1b41a8777be575d9"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#gadcc73bed36f5dbad1b41a8777be575d9">RDA5807::getErrorBlockB</a> ()</td></tr>
<tr class="memdesc:gadcc73bed36f5dbad1b41a8777be575d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the current Status of block B.  <br /></td></tr>
<tr class="separator:gadcc73bed36f5dbad1b41a8777be575d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0d809c6cc2928e1fee006713f77b60e9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#ga0d809c6cc2928e1fee006713f77b60e9">RDA5807::hasRdsInfo</a> ()</td></tr>
<tr class="memdesc:ga0d809c6cc2928e1fee006713f77b60e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true when the RDS system has valid information.  <br /></td></tr>
<tr class="separator:ga0d809c6cc2928e1fee006713f77b60e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac6b8c39c1134700ce3e2a9e5216a5325"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#gac6b8c39c1134700ce3e2a9e5216a5325">RDA5807::hasRdsInfoAB</a> ()</td></tr>
<tr class="memdesc:gac6b8c39c1134700ce3e2a9e5216a5325"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true when the RDS system has valid information.  <br /></td></tr>
<tr class="separator:gac6b8c39c1134700ce3e2a9e5216a5325"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga25df690020bab4154b0737e7365ed8ea"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#ga25df690020bab4154b0737e7365ed8ea">RDA5807::getRdsSync</a> ()</td></tr>
<tr class="memdesc:ga25df690020bab4154b0737e7365ed8ea"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the Rds Sync.  <br /></td></tr>
<tr class="separator:ga25df690020bab4154b0737e7365ed8ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4b741f1433eda57949bb40fa9e973732"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#ga4b741f1433eda57949bb40fa9e973732">RDA5807::setRDS</a> (bool value)</td></tr>
<tr class="memdesc:ga4b741f1433eda57949bb40fa9e973732"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the RDS operation.  <br /></td></tr>
<tr class="separator:ga4b741f1433eda57949bb40fa9e973732"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaecbab42ef08c486b2eb1ab25649c921a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#gaecbab42ef08c486b2eb1ab25649c921a">RDA5807::setRBDS</a> (bool value)</td></tr>
<tr class="memdesc:gaecbab42ef08c486b2eb1ab25649c921a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the RBDS operation.  <br /></td></tr>
<tr class="separator:gaecbab42ef08c486b2eb1ab25649c921a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacfa48dfcf792a9bcee489658177aed90"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#gacfa48dfcf792a9bcee489658177aed90">RDA5807::getRdsReady</a> ()</td></tr>
<tr class="memdesc:gacfa48dfcf792a9bcee489658177aed90"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if RDS Ready.  <br /></td></tr>
<tr class="separator:gacfa48dfcf792a9bcee489658177aed90"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga04e5fe0cacbdcae620388a15630cf9c1"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#ga04e5fe0cacbdcae620388a15630cf9c1">RDA5807::getRdsFlagAB</a> (void)</td></tr>
<tr class="memdesc:ga04e5fe0cacbdcae620388a15630cf9c1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current Text Flag A/B.  <br /></td></tr>
<tr class="separator:ga04e5fe0cacbdcae620388a15630cf9c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad602518e28efa9abb8319f1f25480551"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#gad602518e28efa9abb8319f1f25480551">RDA5807::isNewRdsFlagAB</a> (void)</td></tr>
<tr class="memdesc:gad602518e28efa9abb8319f1f25480551"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if the Text Flag A/B has changed.  <br /></td></tr>
<tr class="separator:gad602518e28efa9abb8319f1f25480551"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadafba5991f6f60a52ad73fdda8fac984"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#gadafba5991f6f60a52ad73fdda8fac984">RDA5807::getRdsAllData</a> (char **stationName, char **stationInformation, char **programInformation, char **utcTime)</td></tr>
<tr class="memdesc:gadafba5991f6f60a52ad73fdda8fac984"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets Station Name, Station Information, Program Information and utcTime.  <br /></td></tr>
<tr class="separator:gadafba5991f6f60a52ad73fdda8fac984"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga32c361b9b996a5920519315aa86d174d"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#ga32c361b9b996a5920519315aa86d174d">RDA5807::getRdsGroupType</a> ()</td></tr>
<tr class="memdesc:ga32c361b9b996a5920519315aa86d174d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the group type.  <br /></td></tr>
<tr class="separator:ga32c361b9b996a5920519315aa86d174d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad85ccedd8baecd8bc2f42325a3ee8741"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#gad85ccedd8baecd8bc2f42325a3ee8741">RDA5807::getRdsVersionCode</a> (void)</td></tr>
<tr class="memdesc:gad85ccedd8baecd8bc2f42325a3ee8741"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the version code (extracted from the Block B)  <br /></td></tr>
<tr class="separator:gad85ccedd8baecd8bc2f42325a3ee8741"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae3bde947a89c6dadfc4dc22aea85b467"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#gae3bde947a89c6dadfc4dc22aea85b467">RDA5807::getRdsProgramType</a> (void)</td></tr>
<tr class="memdesc:gae3bde947a89c6dadfc4dc22aea85b467"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the Program Type (extracted from the Block B)  <br /></td></tr>
<tr class="separator:gae3bde947a89c6dadfc4dc22aea85b467"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga54b3bea446e68453ee1ce57762ade2e4"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#ga54b3bea446e68453ee1ce57762ade2e4">RDA5807::getRdsTrafficProgramCode</a> (void)</td></tr>
<tr class="memdesc:ga54b3bea446e68453ee1ce57762ade2e4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the Traffic Alerts given by the station.  <br /></td></tr>
<tr class="separator:ga54b3bea446e68453ee1ce57762ade2e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6afb347f32121c480adea2a36032d56f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#ga6afb347f32121c480adea2a36032d56f">RDA5807::getNext2Block</a> (char *c)</td></tr>
<tr class="memdesc:ga6afb347f32121c480adea2a36032d56f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Process data received from group 2B.  <br /></td></tr>
<tr class="separator:ga6afb347f32121c480adea2a36032d56f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3ab713bb63978518d42a761b9db445c9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#ga3ab713bb63978518d42a761b9db445c9">RDA5807::getNext4Block</a> (char *c)</td></tr>
<tr class="memdesc:ga3ab713bb63978518d42a761b9db445c9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Process data received from group 2A.  <br /></td></tr>
<tr class="separator:ga3ab713bb63978518d42a761b9db445c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5a26789f1910a5b2098919dbd50e6a3c"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#ga5a26789f1910a5b2098919dbd50e6a3c">RDA5807::getRdsText0A</a> (void)</td></tr>
<tr class="memdesc:ga5a26789f1910a5b2098919dbd50e6a3c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the station name and other messages.  <br /></td></tr>
<tr class="separator:ga5a26789f1910a5b2098919dbd50e6a3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga482098a64299cb8af976d4d10a460212"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#ga482098a64299cb8af976d4d10a460212">RDA5807::getRdsText2A</a> (void)</td></tr>
<tr class="memdesc:ga482098a64299cb8af976d4d10a460212"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the Program Information.  <br /></td></tr>
<tr class="separator:ga482098a64299cb8af976d4d10a460212"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacd6614bc7be99d55a3d9a17739ee7074"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#gacd6614bc7be99d55a3d9a17739ee7074">RDA5807::getRdsText2B</a> (void)</td></tr>
<tr class="memdesc:gacd6614bc7be99d55a3d9a17739ee7074"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the Station Information. <br  />
  <br /></td></tr>
<tr class="separator:gacd6614bc7be99d55a3d9a17739ee7074"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaef398d848e7378ec4897965b8e1b4441"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#gaef398d848e7378ec4897965b8e1b4441">RDA5807::getRdsTime</a> ()</td></tr>
<tr class="memdesc:gaef398d848e7378ec4897965b8e1b4441"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the RDS UTC time and date when the Group type is 4.  <br /></td></tr>
<tr class="separator:gaef398d848e7378ec4897965b8e1b4441"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa3432b4df8ec20277e3d3be60782b395"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#gaa3432b4df8ec20277e3d3be60782b395">RDA5807::getRdsLocalTime</a> ()</td></tr>
<tr class="memdesc:gaa3432b4df8ec20277e3d3be60782b395"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the RDS time converted to local time.  <br /></td></tr>
<tr class="separator:gaa3432b4df8ec20277e3d3be60782b395"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae27337170a5f3dedebf585aa19855ad6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#gae27337170a5f3dedebf585aa19855ad6">RDA5807::setRdsFifo</a> (bool value)</td></tr>
<tr class="memdesc:gae27337170a5f3dedebf585aa19855ad6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets RDS fifo mode enable.  <br /></td></tr>
<tr class="separator:gae27337170a5f3dedebf585aa19855ad6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga196b453f68b2a23d2e6b2515c6412ee2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#ga196b453f68b2a23d2e6b2515c6412ee2">RDA5807::clearRdsFifo</a> (bool value=1)</td></tr>
<tr class="memdesc:ga196b453f68b2a23d2e6b2515c6412ee2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear RDS fifo.  <br /></td></tr>
<tr class="separator:ga196b453f68b2a23d2e6b2515c6412ee2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga22c43e0f08a650bd32446eef6cd8f550"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__GA04.html#ga22c43e0f08a650bd32446eef6cd8f550">RDA5807::clearRdsBuffer</a> ()</td></tr>
<tr class="memdesc:ga22c43e0f08a650bd32446eef6cd8f550"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear RDS Information (Station Name, Station Information, Program Information and Time)  <br /></td></tr>
<tr class="separator:ga22c43e0f08a650bd32446eef6cd8f550"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<h1><a class="anchor" id="GA04"></a>
RDS/RBDS</h1>
<p>Is important to mention that almost all the essential methods required to implement RDS are already implemented here.</p>
<p>Begin working with RDS, simply invoke the setRDS or setRBDS methods.</p>
<p>Querying a set of RDS information, please ensure to call getRdsReady before. </p><dl class="section see"><dt>See also</dt><dd><a href="https://www.2wcom.com/fileadmin/redaktion/dokumente/Company/RDS_Basics.pdf">2WCOM - RDS BasicsRDS</a> </dd>
<dd>
<a href="https://en.wikipedia.org/wiki/Radio_Data_System">Radio Data System</a> </dd>
<dd>
<a href="https://tech.ebu.ch/docs/techreview/trev_255-beale.pdf">RDS in Europe, RBDS in the USA – What are the differences and how can receivers cope with both systems?</a> </dd>
<dd>
<a href="https://www.pira.cz/rds/readbest.pdf">RDS encoder - Implematation Manual</a> </dd></dl>
<h2 class="groupheader">Function Documentation</h2>
<a id="ga22c43e0f08a650bd32446eef6cd8f550" name="ga22c43e0f08a650bd32446eef6cd8f550"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga22c43e0f08a650bd32446eef6cd8f550">&#9670;&#160;</a></span>clearRdsBuffer()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void RDA5807::clearRdsBuffer </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Clear RDS Information (Station Name, Station Information, Program Information and Time) </p>
<p>Clear the buffer with latest RDS information </p>

<p class="reference">References <a class="el" href="#l00599">RDA5807::rds_buffer0A</a>, <a class="el" href="#l00597">RDA5807::rds_buffer2A</a>, <a class="el" href="#l00598">RDA5807::rds_buffer2B</a>, and <a class="el" href="#l00600">RDA5807::rds_time</a>.</p>

</div>
</div>
<a id="ga196b453f68b2a23d2e6b2515c6412ee2" name="ga196b453f68b2a23d2e6b2515c6412ee2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga196b453f68b2a23d2e6b2515c6412ee2">&#9670;&#160;</a></span>clearRdsFifo()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void RDA5807::clearRdsFifo </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>value</em> = <code>1</code></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Clear RDS fifo. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">value</td><td>If true, clears the RDS fifo </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true or false </dd></dl>

</div>
</div>
<a id="ga2e63d5c85cb1825492a5ba2ea3bef2c3" name="ga2e63d5c85cb1825492a5ba2ea3bef2c3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga2e63d5c85cb1825492a5ba2ea3bef2c3">&#9670;&#160;</a></span>getBlockId()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t RDA5807::getBlockId </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the current Block ID. </p>
<p>You must call getRdsReady before calling this function </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="group__GA04.html#gacfa48dfcf792a9bcee489658177aed90" title="Returns true if RDS Ready.">getRdsReady</a></dd></dl>
<p>1= the block id of register 0cH,0dH,0eH,0fH is E</p>
<p>0= the block id of register 0cH, 0dH, 0eH,0fH is A, B, C, D </p><dl class="section return"><dt>Returns</dt><dd>0= the block id of register 0cH, 0dH, 0eH,0fH is A, B, C, D; 1 = the block id of register 0cH,0dH,0eH,0fH is E </dd></dl>

</div>
</div>
<a id="ga24e26921d1b0931681ae4cf9c23742d4" name="ga24e26921d1b0931681ae4cf9c23742d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga24e26921d1b0931681ae4cf9c23742d4">&#9670;&#160;</a></span>getErrorBlockA()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t RDA5807::getErrorBlockA </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the current Status of block A. </p>
<p>You must call getRdsReady before calling this function </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="group__GA04.html#gacfa48dfcf792a9bcee489658177aed90" title="Returns true if RDS Ready.">getRdsReady</a> Block Errors Level of RDS_DATA_0, and is always read as Errors Level of RDS BLOCK A (in RDS mode) or BLOCK E (in RBDS mode when ABCD_E flag is 1)</dd></dl>
<table class="markdownTable">
<tr class="markdownTableHead">
<th class="markdownTableHeadNone">Bin   </th><th class="markdownTableHeadNone">Dec   </th><th class="markdownTableHeadNone">description    </th></tr>
<tr class="markdownTableRowOdd">
<td class="markdownTableBodyNone">00   </td><td class="markdownTableBodyNone">0   </td><td class="markdownTableBodyNone">0 errors requiring correction    </td></tr>
<tr class="markdownTableRowEven">
<td class="markdownTableBodyNone">01   </td><td class="markdownTableBodyNone">1   </td><td class="markdownTableBodyNone">1~2 errors requiring correction    </td></tr>
<tr class="markdownTableRowOdd">
<td class="markdownTableBodyNone">10   </td><td class="markdownTableBodyNone">2   </td><td class="markdownTableBodyNone">3~5 errors requiring correction    </td></tr>
<tr class="markdownTableRowEven">
<td class="markdownTableBodyNone">11   </td><td class="markdownTableBodyNone">3   </td><td class="markdownTableBodyNone">6+ errors or error in checkword, correction not possible   </td></tr>
</table>
<p><b>Available only in RDS Verbose mode</b></p>
<dl class="section return"><dt>Returns</dt><dd>value See table above. </dd></dl>

</div>
</div>
<a id="gadcc73bed36f5dbad1b41a8777be575d9" name="gadcc73bed36f5dbad1b41a8777be575d9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gadcc73bed36f5dbad1b41a8777be575d9">&#9670;&#160;</a></span>getErrorBlockB()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t RDA5807::getErrorBlockB </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the current Status of block B. </p>
<p>You must call getRdsReady before calling this function </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="group__GA04.html#gacfa48dfcf792a9bcee489658177aed90" title="Returns true if RDS Ready.">getRdsReady</a></dd></dl>
<p>Block Errors Level of RDS_DATA_1, and is always read as Errors Level of RDS BLOCK B (in RDS mode ) or E (in RBDS mode when ABCD_E flag is 1).</p>
<table class="markdownTable">
<tr class="markdownTableHead">
<th class="markdownTableHeadNone">Bin   </th><th class="markdownTableHeadNone">Dec   </th><th class="markdownTableHeadNone">description    </th></tr>
<tr class="markdownTableRowOdd">
<td class="markdownTableBodyNone">00   </td><td class="markdownTableBodyNone">0   </td><td class="markdownTableBodyNone">0 errors requiring correction    </td></tr>
<tr class="markdownTableRowEven">
<td class="markdownTableBodyNone">01   </td><td class="markdownTableBodyNone">1   </td><td class="markdownTableBodyNone">1~2 errors requiring correction    </td></tr>
<tr class="markdownTableRowOdd">
<td class="markdownTableBodyNone">10   </td><td class="markdownTableBodyNone">2   </td><td class="markdownTableBodyNone">3~5 errors requiring correction    </td></tr>
<tr class="markdownTableRowEven">
<td class="markdownTableBodyNone">11   </td><td class="markdownTableBodyNone">3   </td><td class="markdownTableBodyNone">6+ errors or error in checkword, correction not possible   </td></tr>
</table>
<p><b>Available only in RDS Verbose mode</b></p>
<dl class="section return"><dt>Returns</dt><dd>value See table above. </dd></dl>

</div>
</div>
<a id="ga6afb347f32121c480adea2a36032d56f" name="ga6afb347f32121c480adea2a36032d56f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga6afb347f32121c480adea2a36032d56f">&#9670;&#160;</a></span>getNext2Block()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void RDA5807::getNext2Block </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>c</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Process data received from group 2B. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">c</td><td>char array reference to the "group 2B" text </td></tr>
  </table>
  </dd>
</dl>

<p class="reference">Referenced by <a class="el" href="#l01056">RDA5807::getRdsText0A()</a>, and <a class="el" href="#l01116">RDA5807::getRdsText2B()</a>.</p>

</div>
</div>
<a id="ga3ab713bb63978518d42a761b9db445c9" name="ga3ab713bb63978518d42a761b9db445c9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3ab713bb63978518d42a761b9db445c9">&#9670;&#160;</a></span>getNext4Block()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void RDA5807::getNext4Block </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>c</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Process data received from group 2A. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">c</td><td>char array reference to the "group  2A" text </td></tr>
  </table>
  </dd>
</dl>

<p class="reference">Referenced by <a class="el" href="#l01086">RDA5807::getRdsText2A()</a>.</p>

</div>
</div>
<a id="gadafba5991f6f60a52ad73fdda8fac984" name="gadafba5991f6f60a52ad73fdda8fac984"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gadafba5991f6f60a52ad73fdda8fac984">&#9670;&#160;</a></span>getRdsAllData()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool RDA5807::getRdsAllData </td>
          <td>(</td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>stationName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>stationInformation</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>programInformation</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>utcTime</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets Station Name, Station Information, Program Information and utcTime. </p>
<p>This function populates four char pointer variable parameters with Station Name, Station Information, Programa Information and UTC time.</p>
<p>You must call setRDS(true), setRdsFifo(true) before calling getRdsAllData(...)</p>
<p>ATTENTION: the parameters below are point to point to array of char.</p>
<p>the right way to call this function is shown below. </p><div class="fragment"><div class="line"><span class="keywordtype">char</span> *stationName, *stationInfo, *programInfo, *rdsTime;</div>
<div class="line"><span class="comment">// The char pointers above will be populate by the call below. So, the char pointers need to be passed by reference (pointer to pointer).</span></div>
<div class="line"><span class="keywordflow">if</span> (rx.getRdsAllData(&amp;stationName, &amp;stationInfo , &amp;programInfo, &amp;rdsTime) ) {</div>
<div class="line">    showProgramaInfo(programInfo);  </div>
<div class="line">    showStationName(stationName); </div>
<div class="line">    showStationInfo(stationInfo);</div>
<div class="line">    showUtcTime(rdsTime); </div>
<div class="line">}</div>
</div><!-- fragment --> <dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">stationName</td><td>(reference) - if NOT NULL, point to Name of the Station (char array - 9 bytes) </td></tr>
    <tr><td class="paramname">stationInformation</td><td>(reference) - if NOT NULL, point to Station information (char array - 33 bytes) </td></tr>
    <tr><td class="paramname">programInformation</td><td>(reference) - if NOT NULL, point to program information (char array - 65 nytes) </td></tr>
    <tr><td class="paramname">utcTime</td><td>(reference) - if NOT NULL, point to char array containing the current UTC time (format HH:MM:SS +HH:MM) </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if found at least one valid data </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__GA04.html#ga4b741f1433eda57949bb40fa9e973732" title="Sets the RDS operation.">setRDS</a>, <a class="el" href="group__GA04.html#gae27337170a5f3dedebf585aa19855ad6" title="Sets RDS fifo mode enable.">setRdsFifo</a>, <a class="el" href="group__GA04.html#gadafba5991f6f60a52ad73fdda8fac984" title="Gets Station Name, Station Information, Program Information and utcTime.">getRdsAllData</a> </dd></dl>

<p class="reference">References <a class="el" href="#l00826">RDA5807::getRdsReady()</a>, <a class="el" href="#l01056">RDA5807::getRdsText0A()</a>, <a class="el" href="#l01086">RDA5807::getRdsText2A()</a>, <a class="el" href="#l01116">RDA5807::getRdsText2B()</a>, <a class="el" href="#l01143">RDA5807::getRdsTime()</a>, and <a class="el" href="#l00988">RDA5807::hasRdsInfoAB()</a>.</p>

</div>
</div>
<a id="ga04e5fe0cacbdcae620388a15630cf9c1" name="ga04e5fe0cacbdcae620388a15630cf9c1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga04e5fe0cacbdcae620388a15630cf9c1">&#9670;&#160;</a></span>getRdsFlagAB()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t RDA5807::getRdsFlagAB </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns the current Text Flag A/B. </p>
<p>ATTENTION: You must call getRdsReady before calling this function. </p><dl class="section return"><dt>Returns</dt><dd>uint8_t current Text Flag A/B </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__GA04.html#gacfa48dfcf792a9bcee489658177aed90" title="Returns true if RDS Ready.">getRdsReady</a> </dd></dl>

</div>
</div>
<a id="ga32c361b9b996a5920519315aa86d174d" name="ga32c361b9b996a5920519315aa86d174d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga32c361b9b996a5920519315aa86d174d">&#9670;&#160;</a></span>getRdsGroupType()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint16_t RDA5807::getRdsGroupType </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Return the group type. </p>
<p>ATTENTION: You must call getRdsReady before calling this function. </p><dl class="section return"><dt>Returns</dt><dd>uint16_t </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__GA04.html#gacfa48dfcf792a9bcee489658177aed90" title="Returns true if RDS Ready.">getRdsReady</a> </dd></dl>

</div>
</div>
<a id="gaa3432b4df8ec20277e3d3be60782b395" name="gaa3432b4df8ec20277e3d3be60782b395"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa3432b4df8ec20277e3d3be60782b395">&#9670;&#160;</a></span>getRdsLocalTime()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char * RDA5807::getRdsLocalTime </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets the RDS time converted to local time. </p>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000004">Todo:</a></b></dt><dd>Need to check. </dd></dl>
<p>ATTENTION: You must call getRdsReady before calling this function.</p>
<p>ATTENTION: Some stations broadcast wrong time. </p><dl class="section return"><dt>Returns</dt><dd>char* a string with hh:mm </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__GA04.html#gacfa48dfcf792a9bcee489658177aed90" title="Returns true if RDS Ready.">getRdsReady</a> </dd></dl>

<p class="reference">References <a class="el" href="#l00600">RDA5807::rds_time</a>.</p>

</div>
</div>
<a id="ga73610b1372a8bdaa959862881eae05fb" name="ga73610b1372a8bdaa959862881eae05fb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga73610b1372a8bdaa959862881eae05fb">&#9670;&#160;</a></span>getRdsProgramInformation()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">char * RDA5807::getRdsProgramInformation </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the Program Information (RT - Radio Text) </p>
<p>@</p>
<p>Process the program information data. Same <a class="el" href="group__GA04.html#ga482098a64299cb8af976d4d10a460212" title="Gets the Program Information.">getRdsText2A()</a>. It is a alias for getRdsText2A.</p>
<p>ATTENTION: You must call getRdsReady before calling this function. </p><dl class="section return"><dt>Returns</dt><dd>char array with the program information (63 bytes) </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__GA04.html#ga482098a64299cb8af976d4d10a460212" title="Gets the Program Information.">getRdsText2A</a> </dd></dl>

<p class="reference">References <a class="el" href="#l01086">RDA5807::getRdsText2A()</a>.</p>

</div>
</div>
<a id="gae3bde947a89c6dadfc4dc22aea85b467" name="gae3bde947a89c6dadfc4dc22aea85b467"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae3bde947a89c6dadfc4dc22aea85b467">&#9670;&#160;</a></span>getRdsProgramType()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t RDA5807::getRdsProgramType </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns the Program Type (extracted from the Block B) </p>
<p>ATTENTION: You must call getRdsReady before calling this function. </p><dl class="section see"><dt>See also</dt><dd><a href="https://en.wikipedia.org/wiki/Radio_Data_System">https://en.wikipedia.org/wiki/Radio_Data_System</a> </dd>
<dd>
<a href="https://www.2wcom.com/fileadmin/redaktion/dokumente/Company/RDS_Basics.pdf">2wcom RDS Basics</a> </dd>
<dd>
<a class="el" href="group__GA04.html#gacfa48dfcf792a9bcee489658177aed90" title="Returns true if RDS Ready.">getRdsReady</a> </dd></dl>
<dl class="section return"><dt>Returns</dt><dd>program type (an integer betwenn 0 and 31) </dd></dl>

</div>
</div>
<a id="gacfa48dfcf792a9bcee489658177aed90" name="gacfa48dfcf792a9bcee489658177aed90"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gacfa48dfcf792a9bcee489658177aed90">&#9670;&#160;</a></span>getRdsReady()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool RDA5807::getRdsReady </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns true if RDS Ready. </p>
<p>Read address 0Ah and check the bit RDSR.</p>
<p>When using the polling method, it is best not to poll continuously. The data will appear in intervals.</p>
<p>ATTENTION: You must call this function before calling any RDS query </p><div class="fragment"><div class="line"><span class="keywordflow">if</span> (rx.getRdsReady()) {</div>
<div class="line">   <span class="keywordflow">if</span> (rx.hasRdsInfo() ) {</div>
<div class="line">     rdsMsg = rx.getRdsProgramInformation();</div>
<div class="line">     stationName = rx.getRdsStationName();</div>
<div class="line">     rdsTime = rx.getRdsTime();  <span class="comment">// Gets the UTC Time. Check the getRdsTime documentation for more details. Some stations do not broadcast the right time.</span></div>
<div class="line">   }</div>
<div class="line">}</div>
</div><!-- fragment --><dl class="section return"><dt>Returns</dt><dd>true or false </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__GA04.html#ga4b741f1433eda57949bb40fa9e973732" title="Sets the RDS operation.">setRDS</a>, <a class="el" href="group__GA02.html#gabd676c0e4ad20c6152a68f8daba64cb3" title="Sets Interrupt Mode.">setInterruptMode</a>, <a class="el" href="group__GA04.html#gadafba5991f6f60a52ad73fdda8fac984" title="Gets Station Name, Station Information, Program Information and utcTime.">getRdsAllData</a>, <a class="el" href="group__GA04.html#ga25df690020bab4154b0737e7365ed8ea" title="Gets the Rds Sync.">getRdsSync</a>, <a class="el" href="group__GA04.html#gae27337170a5f3dedebf585aa19855ad6" title="Sets RDS fifo mode enable.">setRdsFifo</a> </dd>
<dd>
<a href="https://www.2wcom.com/fileadmin/redaktion/dokumente/Company/RDS_Basics.pdf">2wcom - RDS BasicsRDS</a> </dd></dl>

<p class="reference">References <a class="el" href="#l00079">RDA5807::getStatusRegisters()</a>.</p>

<p class="reference">Referenced by <a class="el" href="#l00897">RDA5807::getRdsAllData()</a>.</p>

</div>
</div>
<a id="ga2e78c58aca2f5121306d2e5ceb98effd" name="ga2e78c58aca2f5121306d2e5ceb98effd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga2e78c58aca2f5121306d2e5ceb98effd">&#9670;&#160;</a></span>getRdsStationInformation()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">char * RDA5807::getRdsStationInformation </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the Station Information. </p>
<p>ATTENTION: You must call getRdsReady before calling this function. </p><dl class="section return"><dt>Returns</dt><dd>char array with the Text of Station Information (33 bytes) </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__GA04.html#gacfa48dfcf792a9bcee489658177aed90" title="Returns true if RDS Ready.">getRdsReady</a> </dd></dl>

<p class="reference">References <a class="el" href="#l01116">RDA5807::getRdsText2B()</a>.</p>

</div>
</div>
<a id="gac2defc3812e1900ccd1ac719268abe2e" name="gac2defc3812e1900ccd1ac719268abe2e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac2defc3812e1900ccd1ac719268abe2e">&#9670;&#160;</a></span>getRdsStationName()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">char * RDA5807::getRdsStationName </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the Station Name. </p>
<p>Alias for getRdsText0A</p>
<p>ATTENTION: You must call getRdsReady before calling this function. </p><dl class="section return"><dt>Returns</dt><dd>char* should return a string with the station name. However, some stations send other kind of messages </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__GA04.html#ga5a26789f1910a5b2098919dbd50e6a3c" title="Gets the station name and other messages.">getRdsText0A</a> </dd></dl>

<p class="reference">References <a class="el" href="#l01056">RDA5807::getRdsText0A()</a>.</p>

</div>
</div>
<a id="ga25df690020bab4154b0737e7365ed8ea" name="ga25df690020bab4154b0737e7365ed8ea"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga25df690020bab4154b0737e7365ed8ea">&#9670;&#160;</a></span>getRdsSync()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool RDA5807::getRdsSync </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the Rds Sync. </p>
<p>You must call getRdsReady before calling this function </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="group__GA04.html#gacfa48dfcf792a9bcee489658177aed90" title="Returns true if RDS Ready.">getRdsReady</a></dd></dl>
<p>Returns true if RDS currently synchronized. </p><dl class="section return"><dt>Returns</dt><dd>true or false </dd></dl>

</div>
</div>
<a id="ga5a26789f1910a5b2098919dbd50e6a3c" name="ga5a26789f1910a5b2098919dbd50e6a3c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga5a26789f1910a5b2098919dbd50e6a3c">&#9670;&#160;</a></span>getRdsText0A()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char * RDA5807::getRdsText0A </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets the station name and other messages. </p>
<p>ATTENTION: You must call getRdsReady before calling this function. </p><dl class="section return"><dt>Returns</dt><dd>char* should return a string with the station name. However, some stations send other kind of messages </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__GA04.html#gacfa48dfcf792a9bcee489658177aed90" title="Returns true if RDS Ready.">getRdsReady</a> </dd></dl>

<p class="reference">References <a class="el" href="#l00977">RDA5807::getNext2Block()</a>, and <a class="el" href="#l00599">RDA5807::rds_buffer0A</a>.</p>

<p class="reference">Referenced by <a class="el" href="#l00897">RDA5807::getRdsAllData()</a>, and <a class="el" href="#l00881">RDA5807::getRdsStationName()</a>.</p>

</div>
</div>
<a id="ga482098a64299cb8af976d4d10a460212" name="ga482098a64299cb8af976d4d10a460212"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga482098a64299cb8af976d4d10a460212">&#9670;&#160;</a></span>getRdsText2A()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char * RDA5807::getRdsText2A </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets the Program Information. </p>
<p>@</p>
<p>Process the program information data.</p>
<p>ATTENTION: You must call getRdsReady before calling this function. </p><dl class="section return"><dt>Returns</dt><dd>char array with the program information (63 bytes) </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__GA04.html#gacfa48dfcf792a9bcee489658177aed90" title="Returns true if RDS Ready.">getRdsReady</a> </dd></dl>

<p class="reference">References <a class="el" href="#l01014">RDA5807::getNext4Block()</a>, and <a class="el" href="#l00597">RDA5807::rds_buffer2A</a>.</p>

<p class="reference">Referenced by <a class="el" href="#l00897">RDA5807::getRdsAllData()</a>, and <a class="el" href="#l00892">RDA5807::getRdsProgramInformation()</a>.</p>

</div>
</div>
<a id="gacd6614bc7be99d55a3d9a17739ee7074" name="gacd6614bc7be99d55a3d9a17739ee7074"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gacd6614bc7be99d55a3d9a17739ee7074">&#9670;&#160;</a></span>getRdsText2B()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char * RDA5807::getRdsText2B </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets the Station Information. <br  />
 </p>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000003">Todo:</a></b></dt><dd>Under construction... To be checked. </dd></dl>
<p>ATTENTION: You must call getRdsReady before calling this function. </p><dl class="section return"><dt>Returns</dt><dd>char array with the Text of Station Information (33 bytes) </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__GA04.html#gacfa48dfcf792a9bcee489658177aed90" title="Returns true if RDS Ready.">getRdsReady</a> </dd></dl>

<p class="reference">References <a class="el" href="#l00977">RDA5807::getNext2Block()</a>, and <a class="el" href="#l00598">RDA5807::rds_buffer2B</a>.</p>

<p class="reference">Referenced by <a class="el" href="#l00897">RDA5807::getRdsAllData()</a>, and <a class="el" href="#l00902">RDA5807::getRdsStationInformation()</a>.</p>

</div>
</div>
<a id="gaef398d848e7378ec4897965b8e1b4441" name="gaef398d848e7378ec4897965b8e1b4441"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaef398d848e7378ec4897965b8e1b4441">&#9670;&#160;</a></span>getRdsTime()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char * RDA5807::getRdsTime </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets the RDS UTC time and date when the Group type is 4. </p>
<p>ATTENTION: You must call getRdsReady before calling this function.</p>
<p>ATTENTION: Some stations broadcast wrong time. </p><dl class="section return"><dt>Returns</dt><dd>char* a string with hh:mm +/- offset </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__GA04.html#gacfa48dfcf792a9bcee489658177aed90" title="Returns true if RDS Ready.">getRdsReady</a> </dd></dl>

<p class="reference">References <a class="el" href="#l00600">RDA5807::rds_time</a>.</p>

<p class="reference">Referenced by <a class="el" href="#l00897">RDA5807::getRdsAllData()</a>.</p>

</div>
</div>
<a id="ga54b3bea446e68453ee1ce57762ade2e4" name="ga54b3bea446e68453ee1ce57762ade2e4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga54b3bea446e68453ee1ce57762ade2e4">&#9670;&#160;</a></span>getRdsTrafficProgramCode()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t RDA5807::getRdsTrafficProgramCode </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns the Traffic Alerts given by the station. </p>
<p>ATTENTION: You must call getRdsReady before calling this function. </p><dl class="section see"><dt>See also</dt><dd><a href="https://en.wikipedia.org/wiki/Radio_Data_System">https://en.wikipedia.org/wiki/Radio_Data_System</a> </dd>
<dd>
<a href="https://www.2wcom.com/fileadmin/redaktion/dokumente/Company/RDS_Basics.pdf">2wcom RDS Basics</a> </dd>
<dd>
<a class="el" href="group__GA04.html#gacfa48dfcf792a9bcee489658177aed90" title="Returns true if RDS Ready.">getRdsReady</a> </dd></dl>
<dl class="section return"><dt>Returns</dt><dd>0 = No Traffic Alerts; 1 = Station gives Traffic Alerts </dd></dl>

</div>
</div>
<a id="gad85ccedd8baecd8bc2f42325a3ee8741" name="gad85ccedd8baecd8bc2f42325a3ee8741"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad85ccedd8baecd8bc2f42325a3ee8741">&#9670;&#160;</a></span>getRdsVersionCode()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t RDA5807::getRdsVersionCode </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets the version code (extracted from the Block B) </p>
<p>ATTENTION: You must call getRdsReady before calling this function. </p><dl class="section return"><dt>Returns</dt><dd>0=A or 1=B </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__GA04.html#gacfa48dfcf792a9bcee489658177aed90" title="Returns true if RDS Ready.">getRdsReady</a> </dd></dl>

</div>
</div>
<a id="ga0d809c6cc2928e1fee006713f77b60e9" name="ga0d809c6cc2928e1fee006713f77b60e9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga0d809c6cc2928e1fee006713f77b60e9">&#9670;&#160;</a></span>hasRdsInfo()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool RDA5807::hasRdsInfo </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns true when the RDS system has valid information. </p>
<p>Returns true if RDS currently synchronized; the information are A, B, C and D blocks; and no errors</p>
<p>You must call getRdsReady before calling this function </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="group__GA04.html#gacfa48dfcf792a9bcee489658177aed90" title="Returns true if RDS Ready.">getRdsReady</a> </dd></dl>
<dl class="section return"><dt>Returns</dt><dd>true or false </dd></dl>

</div>
</div>
<a id="gac6b8c39c1134700ce3e2a9e5216a5325" name="gac6b8c39c1134700ce3e2a9e5216a5325"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac6b8c39c1134700ce3e2a9e5216a5325">&#9670;&#160;</a></span>hasRdsInfoAB()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool RDA5807::hasRdsInfoAB </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns true when the RDS system has valid information. </p>
<p>You must call getRdsReady before calling this function </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="group__GA04.html#gacfa48dfcf792a9bcee489658177aed90" title="Returns true if RDS Ready.">getRdsReady</a> </dd></dl>
<dl class="section return"><dt>Returns</dt><dd>true or false </dd></dl>

<p class="reference">Referenced by <a class="el" href="#l00897">RDA5807::getRdsAllData()</a>.</p>

</div>
</div>
<a id="gad602518e28efa9abb8319f1f25480551" name="gad602518e28efa9abb8319f1f25480551"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad602518e28efa9abb8319f1f25480551">&#9670;&#160;</a></span>isNewRdsFlagAB()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool RDA5807::isNewRdsFlagAB </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns true if the Text Flag A/B has changed. </p>
<p>This function returns true if a new FlagAB has chenged. Also it clears the Station Name buffer in that condition.</p>
<p>It is useful to check and show the RDS Text in your application.</p>
<p>You must call getRdsReady before calling this function.</p>
<dl class="section return"><dt>Returns</dt><dd>True or false </dd></dl>

<p class="reference">References <a class="el" href="#l00599">RDA5807::rds_buffer0A</a>.</p>

</div>
</div>
<a id="gaecbab42ef08c486b2eb1ab25649c921a" name="gaecbab42ef08c486b2eb1ab25649c921a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaecbab42ef08c486b2eb1ab25649c921a">&#9670;&#160;</a></span>setRBDS()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void RDA5807::setRBDS </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the RBDS operation. </p>
<p>Enable or Disable the RDS</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">true</td><td>= turns the RBDS ON; false = turns the RBDS OFF </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga4b741f1433eda57949bb40fa9e973732" name="ga4b741f1433eda57949bb40fa9e973732"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga4b741f1433eda57949bb40fa9e973732">&#9670;&#160;</a></span>setRDS()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void RDA5807::setRDS </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the RDS operation. </p>
<p>Enable or Disable the RDS</p>
<p>You must call this function before stating deal with RDS. <br  />
 </p><div class="fragment"><div class="line"><span class="preprocessor">#include &lt;<a class="code" href="RDA5807_8h.html">RDA5807.h</a>&gt;</span> </div>
<div class="line"><a class="code hl_class" href="group__GA01.html#classRDA5807">RDA5807</a> rx; </div>
<div class="line"><span class="keywordtype">void</span> <a class="code hl_function" href="group__GA02.html#ga272444216a784ea5317c83783eb2bfe7">setup</a>()</div>
<div class="line">  rx.<a class="code hl_function" href="group__GA02.html#ga272444216a784ea5317c83783eb2bfe7">setup</a>(); <span class="comment">// Starts the receiver with default parameters</span></div>
<div class="line">  rx.<a class="code hl_function" href="group__GA04.html#ga4b741f1433eda57949bb40fa9e973732">setRDS</a>(true);</div>
<div class="line">  rx.<a class="code hl_function" href="group__GA04.html#gae27337170a5f3dedebf585aa19855ad6">setRdsFifo</a>(true);</div>
<div class="line">  rx.<a class="code hl_function" href="group__GA03.html#gad16a6afa9520b77498b17a72c226305a">setFrequency</a>(10390); <span class="comment">// Station with RDS service</span></div>
<div class="line">}</div>
<div class="ttc" id="aRDA5807_8h_html"><div class="ttname"><a href="RDA5807_8h.html">RDA5807.h</a></div></div>
<div class="ttc" id="agroup__GA01_html_classRDA5807"><div class="ttname"><a href="group__GA01.html#classRDA5807">RDA5807</a></div><div class="ttdoc">KT0915 Class.</div><div class="ttdef"><b>Definition:</b> RDA5807.h:568</div></div>
<div class="ttc" id="agroup__GA02_html_ga272444216a784ea5317c83783eb2bfe7"><div class="ttname"><a href="group__GA02.html#ga272444216a784ea5317c83783eb2bfe7">RDA5807::setup</a></div><div class="ttdeci">void setup(uint8_t clock_frequency=CLOCK_32K, uint8_t oscillator_type=OSCILLATOR_TYPE_PASSIVE, uint8_t rlck_no_calibrate=RLCK_NO_CALIBRATE_MODE_OFF)</div><div class="ttdoc">Starts the device.</div><div class="ttdef"><b>Definition:</b> RDA5807.cpp:273</div></div>
<div class="ttc" id="agroup__GA03_html_gad16a6afa9520b77498b17a72c226305a"><div class="ttname"><a href="group__GA03.html#gad16a6afa9520b77498b17a72c226305a">RDA5807::setFrequency</a></div><div class="ttdeci">void setFrequency(uint16_t frequency)</div><div class="ttdoc">Sets the frequency.</div><div class="ttdef"><b>Definition:</b> RDA5807.cpp:372</div></div>
<div class="ttc" id="agroup__GA04_html_ga4b741f1433eda57949bb40fa9e973732"><div class="ttname"><a href="group__GA04.html#ga4b741f1433eda57949bb40fa9e973732">RDA5807::setRDS</a></div><div class="ttdeci">void setRDS(bool value)</div><div class="ttdoc">Sets the RDS operation.</div><div class="ttdef"><b>Definition:</b> RDA5807.cpp:782</div></div>
<div class="ttc" id="agroup__GA04_html_gae27337170a5f3dedebf585aa19855ad6"><div class="ttname"><a href="group__GA04.html#gae27337170a5f3dedebf585aa19855ad6">RDA5807::setRdsFifo</a></div><div class="ttdeci">void setRdsFifo(bool value)</div><div class="ttdoc">Sets RDS fifo mode enable.</div><div class="ttdef"><b>Definition:</b> RDA5807.cpp:1274</div></div>
</div><!-- fragment --> <dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">true</td><td>= turns the RDS ON; false = turns the RDS OFF </td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__GA04.html#gae27337170a5f3dedebf585aa19855ad6" title="Sets RDS fifo mode enable.">setRdsFifo</a> </dd></dl>

</div>
</div>
<a id="gae27337170a5f3dedebf585aa19855ad6" name="gae27337170a5f3dedebf585aa19855ad6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae27337170a5f3dedebf585aa19855ad6">&#9670;&#160;</a></span>setRdsFifo()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void RDA5807::setRdsFifo </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets RDS fifo mode enable. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">value</td><td>If true, it makes the the fifo mode enable. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true or false </dd></dl>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.6 </li>
  </ul>
</div>
</body>
</html>
